home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d26
/
cattest.arc
/
MAKEQUES.LST
< prev
next >
Wrap
File List
|
1991-07-01
|
13KB
|
258 lines
A. To use the Make Question program [Note, the generic name of
this program is MAKEQUES, and the .EXE version is supplied.
It will have a name of the form MQxx.EXE on the disk, (xx
indicating a version number.)]
1. Menu Presented
a) (F)ile
1) (L)oad...An existing name.LIB file can be loaded for
editing, changing, cloning, etc.. Prior to loading, all
system variables are cleared, i.e., this will not append an
old question onto the back of a new one.
2) (N)ew...Cleans all variables and allows creation of a brand
new question.
3) (S)ave...Reminds you that you are over writing an existing
question (if that is the case) and then saves the question
and returns. Saved questions have the extension .LIB.
4) Save (a)s...Allows cloning of questions by saving them under
a different name (newname.LIB).
5) (W)rite...Creates the PASCAL text which is the ultimate
product.
>>>>This text is in the form of a 'name'.IN1 file, such that
the question driver (PROTOTP.PAS) executes an "include"
command which gets the 'name'.IN1 file and includes it
during Turbo Pascal compilation. Once a question has been
created (i.e., a .EXE file or a .OVR file has been made)
this 'name'.IN1 file can be discarded.
>>>>Alternatively, during editing of a question, one can
literally read the 'name'.IN1 file into the question driver,
and save the combined file as a complete question (after
removing the {$I 'name'.IN1} command! ususally by changing
'{$' to '{.$').
6) (D)irectory...Self explanatory.
7) (C)hange Directory...Self explanatory.
8) (Q)uit...If a (C)reate, (D)elete, E(X)change or (E)dit
command has been issued since the last (S)ave of Save (a)s,
a prompt will appear about quitting with or without saving.
Otherwise, this is the program exit.
b) (C)reate
Items which are created are APPENDed to the current question
file.
1) For variables, (I), (R), (S), the first query requests the
name (in our example, enter p2), and the second query
requests the definition (in our example, enter "random+1.").
Note that all names are adjusted by the program to contain a
prefix of the form 'I_', 'R_' or 'S_' to indicate the type
of variable being created.
2) For the (A)nswer, it is required that a temporary variable
be defined, and then that variable used in the answer. Thus,
defining "answer" as a variable (real) in the example, means
that in the (A)nswer response one enters "R_answer", so that
the value of R_answer is the one being tested. This has been
implemented by forcing you to choose your answer from the
existing question's variables. Use the cursors to choose
either a (R)eal or an (I)nteger variable and then press
<ENTER>. It is a common error to try to use '0' as an answer
response, forgetting that you need to create a temporary
variable, call it zero, which the computer will rename
"R_zero", so that its value can be set equal to '0', and
then the answer response can be "R_zero". It is easier to do
than to explain.
3) For error responses, the first query is either a previously
defined variable (remember to type in the prefixes properly}
or an expression using variables (remember to type in the
prefixes properly). The second query is for a response that
you wish to have the computer make if this error is inputted
by the student. The second item, your "help" for the
student, should be a complete sentence starting with a
capital letter and ending with a period, exclamation point,
or question mark. I prefer help responses phrased as
questions, but you choose whatever you want.
For the (Q)uestion menu choice a special submenu is
invoked.
a> (T)ext-allows you to enter alphabetic characters
b> (V)ariable-shows you all variables, and asks you to pick one
by using the up and down arrows to highlight the desired
variable, and then pressing the <ENTER> key to choose. Your
choice must be a variable, either R_, I_ or S_ as the
prefix. The nascent question text will show the variable
with an A_ prefix, i.e, A_R_ to indicate that this is the
alphabetic equivalent of the real variable.
c> (E)nd-finalizes the text and variables as a complete string.
c) (E)dit
Editing an item allows editing of either its PASCAL
representation or its defining second line. You can not
change the kind of item, i.e., Real to Integer. To do this,
erase (delete) the original, and then create the newer
version.
d) (D)elete
When an item is deleted, the place of that item is lost, so
that if something further down depends on this item, it
becomes undefined. Care must be exercised constantly to make
sure that all variables are either assigned or computed
using variables which themselves have already been assigned.
e) (L)ist
We use an example to illustrate both this item and the
complete program itself. (E)scape exits from this menu item.
Choosing (L)ist causes the computer to create a
temporary file which contains a human readable form of the
question being created (MQ.TMP file). Below is an example
which shows how a question is displayed on the screen. Each
item has three lines of entry, the first is a signature of
the item type, (R)eal, (I)nteger, (S)tring, (Q)uestion,
(E)rror, (A)nswer The second is the PASCAL representation
which will be used for that item. The third (not present for
the (Q)uestion and (A)nswer items), shows how that item will
be computed (if it is a variable), or what the response will
be (if it is an error).
Arrow keys move you about the display, ESCAPE exits the
display. Note that upon exiting, it is possible to save the
display as a text item on disk (MQ.TMP). This would allow
you to print this file after exiting the program.
The display example follows:
R
R_p2
random+1.
R
R_p1
R_p2*random+10.
R
R_v1
8.*random
R
R_v2
10.*random + R_v1
Q
' If a gas under a pressure of ' + A_R_p1+' atm., occupying
' + A_R_v1
Q
' liters is expanded against a constant pressure of ' +
A_R_p2+' atm. to a volume of '
Q
A_R_v2 + ' liters, find the work.
E
R_p2*(R_v2-R_v1)
Have you followed the sign convention for work in and out?
E
-R_p1*(R_v2-R_v1)
Did you use the wrong pressure?
R
R_answer
- R_p2*(R_v2 - R_v1)
A
R_answer
f) e(X)change
This menu choice allows you to interchange pairs of items in
the question, i.e., change the order. If you have added a
variable after the question rather than before it, you xan
interchange their positions using this instruction. The
screen will show you a compressed list of items, and you
choose two of them by pressing the space bar while they are
highlighted. Then, pressing <ENTER> results in the
interchange taking place.
2. Changing an old question or cloning an old question into a
new question.
From the (F)ile menu of MAKEQUES, choose (L)oad and load an
existing question. Then edit the question, save it under a
new name, and (W)rite out the 'name'.IN1 file. For instance,
you could (C)reate a new (added) (E)rror response:
E
R_p2
Did you enter the ending pressure rather than the work?
B. To test a question after creating it using the Make Question
(MAKEQUES) program.
1. Single question method.
Load Turbo, and use the FileNew command set to clear the
Turbo buffer. Press Ctrl-KR to execute the read command, and
then read "PROTOTYP.PAS" into the Turbo buffer. Choose a
name (here "name", presuambly the name of the .IN1 file
which you created using the MAKEQUES program), and change
every occurrence of the string "PROTOTYP" to "name". Locate
the {$I INITQUES.IN1} line, and either
change INITQUES to "name"
or
use Ctrl-K to read the 'name'.IN1 file
directly into the current program [if you
use this method, change {$I to {.$I].
Compile the program. If there are no errors, save the
program under "name.PAS" so that you can access this
question again at some future time.
If there are errors, correct them using the Pascal Editor.
When the Pascal errors are eliminated run the program
(either stand alone or in the IDE) and check that it is
correct (from a subject matter point of view).WARNING,
WARNING, WARNING!!!!!!! It is very disconcerting to students
to get the right answer, input it into the computer, and
have the computer respond that the answer is wrong! Remember
that pressing PF10 during program execution will bring up
the special (hidden) window which shows the variables in
your question. Students will not know about this window, but
you can check it to see that all variables have the values
you expect. Use the "\" key as the password to allow you to
view this screen.
a) Things to check that are likely errors.
1) question is too long.
2) variables in the question do not correspond to variables
which have been defined, presumably because these variables
were edited after the question had been created.
3) answer isn't a variable.
b) Things to do once the question is checked.
1) You can save the question (under a new name) in either
compiled (i.e., compile to DISK) or text (Save) form,
2) You can edit away the marked off text and recompile to the
overlay form (to DISK).
2. Throw away question method.
Load Turbo, and use F3 to load PROTOTYP.PAS. Locate the {$I
INITQUES.IN1} line and change INITQUES to the name used in
the MAKEQUES program when using the (W)rite command to
create the name.IN1 file. Compile and execute to your
heart's content, but at the end, do not save the text.
C. To take questions (in .IN1 form) and create a PROCTORn
program which includes these questions run the program MTxx
MAKETEST). This will create the PROCTORn.EXE and the
PROCTORn.OVR files.
D. To take a complete PROCTOR program (examination), and create
a student disk complete with password.
1. WE ASSUME THAT THE STUDENT IS REQUIRED TO USE THE A: DRIVE.
2. For security reasons, if the student is using anything but
the A: drive, the PROCTOR program aborts. If security
warrants it, an emasculated copy of DOS can be used as the
A: boot disk, and each machine booted from this DOS disk, so
that you can be sure that no TSR's are loose in the system.
3. Put a clean diskette in the A: drive.
4. Run the program INITGRAD to create a password and a
GRADE.BK$ file on the student's disk (which is in the A:
drive of your machine).
5. Copy PROCTORn.* from the directory in which you created them
to the A: drive. The student diskette will contain
PROCTORn.EXE, PROCTORn.OVR, and GRADE.BK$ at the start of
the examination. At the end of the examination, it will also
contain Qn.$$$, where the data that the problems used is
stored (currently plain text), and Qn.UUC, uuencoded files
showing the history of how the student took the question.
Thus file may be read once it is uudec(oded).
6. Physically label the disk with the name of the student who
will receive this disk, and record in your private log the
password and name associated with this diskette.
7. Go back to step 3, and repeat the procedure for the next
student.